Image is a public domain program for the Macintosh II for analyzing and editing gray scale and color images. When complete, it will perform standard image analysis techniques such as densitometry, morphometrics, histograms, contrast enhancement, thresholding and density profiling. It currently provides many MacPaint-like editing functions, including the ability to draw lines, rectangles, ovals and text. Objects may be drawn either outlined or filled, in any of 256 colors or shades of gray. Image will be updated to support the $995 Data Translation frame grabber, which is supposed to be available in March, 1987.
Tool Palette
All of the tools in the tool palette now work, with the exception of the free hand outlining tool. The window containing the tool palette, as well as all the other windows displayed by Image, can be freely moved around the screen.
Pencil - Option-click to pick up the color under pencil. This works in either the current picture window or the CLUT window. It is not necessary to hold down the option key to pick up colors from the CLUT window.
Selection Rectangle - Double-click to select the entire picture. Use this tool to specify the subregion used by commands in the Functions menu. Hold down the Shift key to constrain the selection to be square. This tool is the only one that can be used to modify the color lookup table(CLUT) by clicking and dragging on the CLUT window.
Magnifying Glass - Double-click to unzoom. Option-click to unzoom in steps.
Grabber - Only works after you have zoomed with magnifying glass.
Eraser - Option-click to pick up background colors. Also picks up background colors from the CLUT window. The color of the eraser indicates the current background color. The background color is used by the Erase command and as the background color for text.
Paint Brush - Option-click to pick up the color under the brush . It is not necessary to hold down the option key to pick up colors from the CLUT window. The color of the brush indicates the current foreground color. Double-click on the brush to change its size.
Outlining Tools - Double clicking on any of the outlining tools(rectangle, oval, or polygon) will switch to the fill mode, as in HyperCard. These tools can be constrained to draw squares(or circles) by holding down the Shift key.
Airbrush Tool - Double-click to change the brush diameter.
Line Tool - Lines can be constrained to be either vertical or horizontal by holding down the Shift key.
Smudging Tool(the finger) - Double-click to change the diameter of the be smudging area.
Density Profile Tool(the line plot) - Generates the density profile plot along a line which you generate as you would using the Line Tool. Averaging will be performed if the line width is greater than one. For example, assuming the maximum line with is specified, then each data point plotted is the average of eight pixels. The Plot window my be resized. Lines can be constrained to horizontal or vertical be holding down the Shift key.
Histogram(the column plot) - Generates a density histogram of the specified rectangle. Double-click to generate a histogram of the entire picture.
MONO Window
Click in this window to load the CLUT with 256 shades of gray. Click and drag on the plot(a piece-wise linear density transformation function) to vary brightness. Click and drag in the margin to vary the two points which define the function. Double-click in the Mono window to reset the CLUT to a 256 gray level ramp(an identity function).
CLUT Window
Click in this window to load the CLUT with a color palette. The default palette consists of 20 colors. This palette is stored in the file IMAGE.COL, which must be in the same folder as Image. Click and drag near the bottom of the palette to move it within the CLUT. Click and drag near the top of the palette to stretch it. Click in this window with any of the drawing tools to pick up a new drawing(foreground) color. Click in this widow with the eraser to pick up a new background color.
Picture Windows
Windows containing pictures may be resized. If you do this, the picture will be scaled to fit the window. The drawing tools will not work after resizing the window due to known bugs.
Displaying GrayView Pictures
GrayView pictures may need to be converted to the version 1.16 format in order to display correctly. To convert a picture, open it with GrayView V1.16, then use Save As to resave it. Before doing this, make sure the CLUT is reset by using the Control Panel to first select 2-color mode and then reselect 256-color mode. Image can display color GrayView pictures if you use the Klutz DA to select the default CLUT before opening the picture. Revert to Saved does not work with GrayView pictures unless they are resaved using the Save As command.
Upcoming Features(in no particular order)
Ñ Support for DataTranslation QuickCapture frame grabber card
Ñ Shading correction and averaging
Ñ Save color palette or grayscale map in the picture header
Ñ Copy or move selection
Ñ Undo of all operations which alter an image
Ñ Copy plots from Plot and Histogram windows into a picture window
Ñ Copy data(ASCII text) and graphics(PICT) from Plot window to Clipboard
Ñ Copy/Paste selection in PICT format.
Ñ Save in PICT format
Ñ Speed up Airbrush and Smudging tools(recompile in MPW Pascal?)
Ñ Save results in spreadsheet format(using List Manager?)
Ñ Compute average density of nonrectangular areas
Ñ On-line help
Ñ Measure distances, areas, perimeter lengths and line lengths
Ñ Scroll Bars
Ñ Zoom Boxes
Ñ Scale to fit window option
Ñ Print images on LaserWriter using halftoning
Ñ Print histograms and plots
Ñ Contrast control similar to ImageStudio
Ñ Hierachical menus
Ñ Ability to specify size of newly created windows
Ñ Color palette editor
Programming Problems
The are several unresolved programming problems in version .35 of Image. Any help towards solving any of these problems would be greatly appreciated.
1) How can the "black snow" at the top of the screen, generated whenever the CLUT is updated, be eliminated?
2) How is the "marching ants" selection rectangle, as used by all the commercial Mac drawing programs, generated?
3) Why isn't the color palette produced by the Use 256 Color CLUT command a continuous spectrum of colors when using System 4.2? The same code did produce a continuous spectrum with System 4.1. Did Apple change the HSL2RGB routine?
4) Is there a better way to restore the screen after it has been erased by the Photo Mode command? Is there some way to invalidate the entire screen, causing update events resulting in all the windows being redrawn?
5) How can the default CLUT be restored. Is it stored as a resource(klut?) in the System file?
6) Is there a relatively painless way to print 8-bit PixMaps on the LaserWriter?
Help with any of these problems, bug reports, suggestions for improvement or enhancments, or any other comments are welcome.